package com.woniuxy.dao;

import com.woniuxy.entity.MenuEntity;
import com.woniuxy.entity.MenusRoleDTO;

import java.util.List;

/**
 * @Author: 马宇航
 * @Description: 菜单dao
 * @DateTime: 22/05/25/0025 上午 10:45
 * @Component: 成都蜗牛学苑
 **/
public interface RbacMenuDao {
    /**
     * service调用需要的，用于查询顶级菜单
     * ChangeLog : 1. 创建 (22/05/25/0025 上午 11:06 [马宇航]);
     *
     * @return java.util.List<com.woniuxy.entity.MenuEntity>
     */
    List<MenuEntity> findAll();
    /**
     * 这个方法是 resultMap中，collection标签中配置了 select属性触发的方法。
     * ChangeLog : 1. 创建 (22/05/25/0025 上午 11:07 [马宇航]);
     * @param fid
     * @return java.util.List<com.woniuxy.entity.MenuEntity>
     */
    List<MenuEntity> findAllChildren(int fid);

    List<MenuEntity> getFatherMenu();

    int saveMenu(MenuEntity menuEntity);

    List<Integer> findAllByRoleId(int roleId);

    int deleteByRoleId(int roleId);

    int saveMenusByRoleId(MenusRoleDTO menusRoleDTO);

    List<MenuEntity> getMenusByRoleId(int roleId);

    List<MenuEntity> getFirstMenus();
}
